This invention relates generally to messaging and scheduling, and more particularly to directing automated services for messaging and scheduling.
Messaging and scheduling have become important applications in many computer users"" lives. Messaging programs generally allow a user to send and receive electronic mail (e.g., messages) to and from other computer users, for example, over a local- or a wide-area network, or over an intranet, extranet, or the Internet. Scheduling programs generally allow a user to track appointments in a calendar. More sophisticated scheduling programs allow one user to schedule a group meeting with other computer usersxe2x80x94checking the latter users"" schedule availability, and receiving confirmation from the users upon them accepting or rejecting the group meeting appointment.
Within the prior art, however, messaging and scheduling programs are generally not very well integrated, even if they are components within the same computer program. For example, a user may receive a message from a colleague stating xe2x80x9cLooking forward to seeing you at 2 on Thursday.xe2x80x9d Generally, however, the prior art does not provide for automatically directing the scheduling program to make a meeting appointment at 2 p.m. on Thursday. Instead, typically the user who has received the message has to open the scheduling program, access Thursday""s calendar, and manually enter an appointment at 2 p.m. on Thursday""s calendar. Because of the many steps required to go from reading the message within the messaging program to entering the information into the scheduling program, many users choose not to even use scheduling programs, or to only use them sparingly.
For these and other reasons, there is a need for the present invention.
The invention relates to directing automated services for messaging and scheduling. In one embodiment, a computer-implemented method first determines a message to analyze. The method then determines a scheduling probability (which in one embodiment is an inferred probability that the user has a goal of scheduling and/or reviewing calendar information) based on at least one of the message and contextual information (e.g., information regarding recent user activity), and based on the scheduling probability, selects one of the following options: (1) inaction, (2) automatic action, or (3) suggested action pending user approval (the latter of which may include a dialog with the user about desirability of the automatic action, or may include seeking confirmation from the user to take action). Upon the method selecting either the (1) automatic action option or the (2) suggested action with user approval optionxe2x80x94the latter also in conjunction with receiving actual user approvalxe2x80x94the method performs a scheduling action based on the message in a manner balancing precision and confidence of the scheduling action.
Embodiments of the invention provide for advantages not found within the prior art. The method can perform a scheduling action based on the message, upon determining the scheduling probability of the message. Based on the scheduling probabilityxe2x80x94defined in one embodiment as the probability a user desires to view a calendar or to schedule an appointment given the information in an email message or other source of text-based information.xe2x80x94the method determines if it should do nothing (i.e., corresponding to a low probability), do something automatically (i.e., corresponding to a high probability), or suggest an action, but do not do it automatically (i.e., corresponding to a medium probability). Thus, embodiments of the invention effectively link scheduling with messaging automatically, when a message has scheduling information contained therein.
Furthermore, by performing the scheduling action in a manner balancing precision and confidence of the scheduling action, embodiments of the invention are also advantageous. In one embodiment, the scheduling action performed only has a precision level commensurate with the method""s confidence that the action is correct. Thus, if the method can only glean that an appointment is to fall on Thursday, but cannot determine what time on Thursday, the method shows the user all of Thursday""s calendar. As another example, if the method can only glean that an appoint is to fall sometime next week, but cannot determine what day next week, the method shows the user all of next week""s calendar. In other words, in one embodiment of the invention, the method performs a scheduling action only insofar as it is certain to a predetermined degree of confidence that the scheduling action is correct, instead of performing a far more precise scheduling action that it is not as certain is correct.